type MyExclude<T, U> = T extends U ? never : T;

/* _____________ 测试用例 _____________ */
import type { Equal, Expect } from "@type-challenges/utils";

type cases = [
  Expect<Equal<MyExclude<"a" | "b" | "c", "a">, "b" | "c">>,
  Expect<Equal<MyExclude<"a" | "b" | "c", "a" | "b">, "c">>,
  Expect<
    Equal<MyExclude<string | number | (() => void), Function>, string | number>
  >
];
/* _____________ 下一步 _____________ */
/**
 * 联合类型的分发
 * @link https://jkchao.github.io/typescript-book-chinese/tips/distributive.html
 * 
 */
